package com.mdl.springmvc.ioStream.io;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;

/**
 * @Desc
 * @Author madengling
 * @Time 2020/12/24 17:35
 */
public class FileOutputStreamTest02 {
    public static void main(String[] args) throws IOException {
        /**
         * 通过IO流往文件中写入一句话“HELLO IO!”
         * 输出流
         * 字符流，不管是字节数据还是字符数据，本质上都是字节数据。
         * 字节输出流：OutputStream
         *
         * 创建流对象（输出管道）
         * 把数据变成字节数据
         * 用管道传输数据到文件
         */
        String path = "G:\\dhcc\\idea\\MavenProject\\src\\main\\webapp\\files\\";
        //创建流对象
        FileOutputStream fos = new FileOutputStream(path+"a.txt",true);
        //上面的代码至少干了两件事：1.创建了管道2.把管道怼到了文件上
        //流对象会帮助创建文件
        //数据
        String data = "hello IO";
        //把字符数据换成了字节数据
        byte[] bytes = data.getBytes();
        System.out.println(Arrays.toString(bytes));
        //通过管道把数据写进文件
        fos.write(97);
        fos.write(98);
        fos.write(99);
        fos.write(bytes);
        //\n回车符
        byte[] b = "\n麻麻我想吃烤山药".getBytes();
        fos.write(b);
        byte[] b1 = "abcde".getBytes();
        // 写出从索引2开始，2个字节。索引2是c，两个字节，也就是cd。
        fos.write(b1,2,2);
        System.out.println("写入成功！");
        // 关闭资源
        fos.close();
    }
}
